package com.example.aspect.anno;

import com.example.enums.LimitRequestStrategy;

import java.lang.annotation.*;

/**
 * @author hello
 * @date 2023-04-12 15:49:04
 */
@Documented
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface LimitRequest {

    /**
     * 限制时间，单位毫秒，默认1分钟
     *
     * @return
     */
    long time() default 60;

    /**
     * 允许请求的次数
     *
     * @return
     */
    int count() default 10;

    /**
     * 提示
     *
     * @return
     */
    String message() default "请求频率过快";

    /**
     * 策略
     *
     * @return
     */
    LimitRequestStrategy strategy() default LimitRequestStrategy.DEFAULT;


}
